#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
const int maxn = 25;
int a[maxn],n,k,ans;

bool is_prime(int x){
	int m=sqrt(x+0.5);
	for(int i=2;i<=m;i++)
		if(x%i==0)return false;
	return true;
}

void dfs(int num,int step,int wz){
	if(step>=k){
		if(is_prime(num))ans++;
		return;
	}else if(wz>=n && step<k)return;
	
	for(int i=wz+1;i<=n;i++){
		dfs(num+a[i],step+1,i);
	}
}

int main(){
	cin>>n>>k;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	
	for(int i=1;i<=n-k+1;i++){
		dfs(a[i],1,i);
	}
	cout<<ans<<endl;
	return 0;
}
